package com.minimalist.lindi.mapper;

import com.minimalist.common.entity.lindi.po.LindiProvinceIndex;
import com.minimalist.common.entity.lindi.vo.provinceindex.LindiProvinceIndexQueryVO;
import com.mybatisflex.core.BaseMapper;
import com.mybatisflex.core.paginate.Page;
import com.mybatisflex.core.query.QueryWrapper;

/**
 * 林地指标交易平台_省级公益林指标 映射层。
 *
 * @author 11987
 * @since 2025-05-13
 */
public interface LindiProvinceIndexMapper extends BaseMapper<LindiProvinceIndex>{

    /**
     * 根据省级指标ID查询省级指标信息。
     *
     * @param provinceIndexId 省级指标ID
     * @return 省级指标信息
     */
    default LindiProvinceIndex selectProvinceIndexByProvinceIndexId(Long provinceIndexId){
        return selectOneByQuery(QueryWrapper.create()
                .eq(LindiProvinceIndex::getProvinceIndexId, provinceIndexId));
    }

    /**
     * 根据查询条件分页查询省级指标列表。
     *
     * @param queryVO 查询条件
     * @return 分页列表
     */
    default Page<LindiProvinceIndex> selectPageProvinceIndexList(
            LindiProvinceIndexQueryVO queryVO){
        return this.paginate(queryVO.getPageNum(), queryVO.getPageSize()
                , QueryWrapper.create());
    }
}
